/**
 * 过滤数组中某个属性名的值相同，并返回当前的对象，type默认传id
 * id：要过滤的相同id
 * data： 过滤的数组
 * type:  如果不想过滤属性名为id，传想过滤的属性名
 */

function findObjectById(id: string | number, data: any, type: string) {
  for (let i = 0; i < data.length; i++) {
    const item = data[i];
    if (item[type] === id) {
      return item;
    } else if (item.children) {
      const result = findObjectById(id, item.children, type);
      if (result) return result;
    }
  }
  return null;
}

export { findObjectById };
